/*
 * Decompiled with CFR 0.150.
 * 
 * Could not load the following classes:
 *  cn.hutool.core.date.DateUtil
 *  cn.hutool.core.util.ObjectUtil
 *  com.alibaba.fastjson.JSON
 *  com.alibaba.fastjson.JSONObject
 *  de.felixroske.jfxsupport.FXMLController
 *  javafx.beans.value.ChangeListener
 *  javafx.beans.value.ObservableValue
 *  javafx.collections.FXCollections
 *  javafx.collections.ObservableList
 *  javafx.event.EventHandler
 *  javafx.fxml.FXML
 *  javafx.fxml.Initializable
 *  javafx.scene.Node
 *  javafx.scene.control.Alert
 *  javafx.scene.control.Alert$AlertType
 *  javafx.scene.control.Button
 *  javafx.scene.control.CheckBox
 *  javafx.scene.control.ChoiceBox
 *  javafx.scene.control.DatePicker
 *  javafx.scene.control.Pagination
 *  javafx.scene.control.ScrollPane
 *  javafx.scene.control.TableCell
 *  javafx.scene.control.TableColumn
 *  javafx.scene.control.TableView
 *  javafx.scene.control.TextField
 *  javafx.scene.control.cell.PropertyValueFactory
 *  javafx.scene.input.KeyCode
 *  javafx.scene.input.KeyEvent
 *  javafx.scene.layout.VBox
 *  javafx.stage.Modality
 *  javafx.stage.Stage
 *  javafx.util.Callback
 *  javafx.util.StringConverter
 *  org.springframework.beans.factory.annotation.Autowired
 *  org.springframework.util.CollectionUtils
 *  org.springframework.util.StringUtils
 */
package com.gys.controller.temphumi;

import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gys.GysApplication;
import com.gys.common.business.TempHumiUtil;
import com.gys.common.data.HttpJson;
import com.gys.common.data.PageInfo;
import com.gys.common.util.CommonUtil;
import com.gys.common.util.ConstUtil;
import com.gys.controller.BaseController;
import com.gys.controller.dataManger.ControllerManger;
import com.gys.controller.index.IndexController;
import com.gys.controller.temphumi.AddTempHumiController;
import com.gys.data.deviceCheck.GsdcStatus;
import com.gys.data.temphumi.TempHumiInData;
import com.gys.data.temphumi.TempHumiOutData;
import com.gys.view.tempHumi.addTempHumiView;
import de.felixroske.jfxsupport.FXMLController;
import java.net.URL;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.ResourceBundle;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.Node;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.CheckBox;
import javafx.scene.control.ChoiceBox;
import javafx.scene.control.DatePicker;
import javafx.scene.control.Pagination;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.VBox;
import javafx.stage.Modality;
import javafx.stage.Stage;
import javafx.util.Callback;
import javafx.util.StringConverter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;

@FXMLController
public class TempHumiController
extends BaseController
implements Initializable {
    private final int pageSize = ConstUtil.DEFAULT_PAGESIZE;
    private final int defaultPageCount = ConstUtil.DEFAULT_PAGECOUNT;
    private ObservableList<TempHumiOutData> observableTableList = FXCollections.observableArrayList(new ArrayList());
    @FXML
    private ScrollPane scrollPane;
    @FXML
    private VBox vBox;
    @FXML
    private Button sureBtn;
    @FXML
    private Button addBtn;
    @FXML
    private Pagination pagination;
    @FXML
    private TextField inpVoucherId;
    @FXML
    private ChoiceBox<GsdcStatus> inpAuditStatus;
    @FXML
    private DatePicker inpCheckDate;
    @FXML
    private TableColumn<TempHumiOutData, String> index;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthVoucherId;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthBrId;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthBrName;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthArea;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthDate;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthTime;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthTemp;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthHumi;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthCheckStep;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthCheckTemp;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthCheckHumi;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthUpdateEmp;
    @FXML
    private TableColumn<TempHumiOutData, String> gsthStatus;
    @FXML
    private TableColumn<TempHumiOutData, CheckBox> humiCheckBox;
    @FXML
    private TableView<TempHumiOutData> tableView;
    @Autowired
    private IndexController indexController;
    @Autowired
    private AddTempHumiController addTempHumiController;
    private Stage stg;

    public void initialize(URL location, ResourceBundle resources) {
        this.scrollPane.setPrefWidth(this.getContentWidth());
        this.scrollPane.setPrefHeight(this.getContentHeight());
        this.vBox.setPrefWidth(this.getContentWidth());
        this.vBox.setPrefHeight(this.getContentHeight());
        this.tableView.setPrefWidth(this.getContentWidth());
        this.pagination.setPrefWidth(this.getContentWidth());
        ControllerManger.controllerMap.put(this.getClass().getSimpleName(), this);
        StringConverter converter = CommonUtil.dataPickerFormat("yyyyMMdd");
        this.inpCheckDate.setConverter(converter);
        this.pagination.setPageFactory((Callback)new Callback<Integer, Node>(){

            public Node call(Integer pageNum) {
                return TempHumiController.this.initTable(pageNum);
            }
        });
        this.inpAuditStatus.getItems().addAll(this.getAllStatus());
        this.inpAuditStatus.converterProperty().set(new StringConverter<GsdcStatus>(){

            public String toString(GsdcStatus object) {
                return object.getName();
            }

            public GsdcStatus fromString(String string) {
                return null;
            }
        });
        this.indexController.scrollContentPane.setOnKeyReleased((EventHandler)new EventHandler<KeyEvent>(){

            public void handle(KeyEvent e) {
                if (!TempHumiController.this.sureBtn.isDisable() && e.getCode() == KeyCode.ENTER) {
                    TempHumiController.this.sureAction();
                } else if (e.getCode() == KeyCode.F1) {
                    TempHumiController.this.addTempHumi();
                } else if (e.getCode() == KeyCode.F8) {
                    TempHumiController.this.auditTempHumi();
                }
                e.consume();
            }
        });
        this.refreshTable();
    }

    private void refreshTable() {
        this.initTable(0);
        this.pagination.setCurrentPageIndex(0);
    }

    public TableView<TempHumiOutData> initTable(int pageNum) {
        TempHumiInData inData = new TempHumiInData();
        inData.setPageNum(pageNum + 1);
        inData.setPageSize(this.pageSize);
        if (ObjectUtil.isNotEmpty(this.inpVoucherId.getText())) {
            inData.setGsthVoucherId(this.inpVoucherId.getText().trim());
        }
        if (ObjectUtil.isNotEmpty(this.inpAuditStatus.getValue())) {
            inData.setGsthStatus(((GsdcStatus)this.inpAuditStatus.getValue()).getCode());
        }
        if (ObjectUtil.isNotEmpty(this.inpCheckDate.getValue())) {
            inData.setGsthDate(DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.inpCheckDate.getValue()).toString()), (String)"yyyyMMdd"));
        }
        PageInfo pageInfo = null;
        HttpJson rsp = TempHumiUtil.getTempHumiList(inData);
        if (rsp.isSuccess()) {
            pageInfo = (PageInfo)JSON.parseObject((String)rsp.getMsg(), PageInfo.class);
            if (pageInfo != null && !CollectionUtils.isEmpty(pageInfo.getList())) {
                ArrayList<TempHumiOutData> listTemp = new ArrayList<TempHumiOutData>();
                for (int i = 0; i < pageInfo.getList().size(); ++i) {
                    String str = JSONObject.toJSONString(pageInfo.getList().get(i));
                    TempHumiOutData tempHumiOutData = (TempHumiOutData)JSONObject.parseObject((String)str, TempHumiOutData.class);
                    listTemp.add(tempHumiOutData);
                }
                pageInfo.setList(listTemp);
            }
        } else {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", rsp.getMsg());
            alert.showAndWait();
            return new TableView();
        }
        List<TempHumiOutData> dataList = null;
        if (pageInfo != null && !CollectionUtils.isEmpty(pageInfo.getList())) {
            this.pagination.setPageCount(pageInfo.getPages());
            dataList = pageInfo.getList();
        } else {
            this.pagination.setPageCount(this.defaultPageCount);
            dataList = new ArrayList();
        }
        this.observableTableList.clear();
        this.observableTableList = FXCollections.observableArrayList(dataList);
        this.bingTableCell();
        this.tableView.setItems(this.observableTableList);
        return this.tableView;
    }

    private void bingTableCell() {
        this.index.setCellValueFactory((Callback)new PropertyValueFactory(this.index.getId()));
        this.humiCheckBox.setCellValueFactory(cellData -> ((TempHumiOutData)cellData.getValue()).getHumiCheckBox().getCustomCheckBox());
        this.humiCheckBox.setCellFactory(col -> {
            TableCell<TempHumiOutData, CheckBox> cell = new TableCell<TempHumiOutData, CheckBox>(){

                protected void updateItem(CheckBox item, boolean empty) {
                    super.updateItem(item, empty);
                    this.setGraphic((Node)item);
                    if (item != null) {
                        item.setOnMouseClicked(col -> {
                            if (CollectionUtils.isEmpty((Collection)TempHumiController.this.observableTableList)) {
                                return;
                            }
                            int index = this.getIndex();
                            for (int i = 0; i < TempHumiController.this.observableTableList.size(); ++i) {
                                if (i == index) continue;
                                ((TempHumiOutData)TempHumiController.this.observableTableList.get(i)).getHumiCheckBox().setSelectStatus(false);
                            }
                        });
                    }
                }
            };
            return cell;
        });
        this.gsthVoucherId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthVoucherId.getId()));
        this.gsthBrId.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthBrId.getId()));
        this.gsthBrName.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthBrName.getId()));
        this.gsthArea.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthArea.getId()));
        this.gsthDate.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthDate.getId()));
        this.gsthTime.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthTime.getId()));
        this.gsthTemp.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthTemp.getId()));
        this.gsthHumi.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthHumi.getId()));
        this.gsthCheckStep.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthCheckStep.getId()));
        this.gsthCheckTemp.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthCheckTemp.getId()));
        this.gsthCheckHumi.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthCheckHumi.getId()));
        this.gsthUpdateEmp.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthUpdateEmp.getId()));
        this.gsthStatus.setCellValueFactory((Callback)new PropertyValueFactory(this.gsthStatus.getId()));
        this.tableView.getSelectionModel().selectedItemProperty().addListener((ChangeListener)new ChangeListener<TempHumiOutData>(){

            public void changed(ObservableValue<? extends TempHumiOutData> observable, TempHumiOutData oldValue, TempHumiOutData newValue) {
                if (CollectionUtils.isEmpty((Collection)TempHumiController.this.observableTableList)) {
                    return;
                }
                for (int i = 0; i < TempHumiController.this.observableTableList.size(); ++i) {
                    if (i == newValue.getIndex() - 1) {
                        ((TempHumiOutData)TempHumiController.this.observableTableList.get(i)).getHumiCheckBox().setSelectStatus(true);
                        continue;
                    }
                    ((TempHumiOutData)TempHumiController.this.observableTableList.get(i)).getHumiCheckBox().setSelectStatus(false);
                }
            }
        });
    }

    @FXML
    void sureAction() {
        String inpVoucherIdSearchStr = this.inpVoucherId.getText().trim();
        String inpAuditStatusSearchStr = "";
        if (ObjectUtil.isNotEmpty(this.inpAuditStatus.getValue())) {
            inpAuditStatusSearchStr = ((GsdcStatus)this.inpAuditStatus.getValue()).getCode();
        }
        LocalDate startDate = (LocalDate)this.inpCheckDate.getValue();
        Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        if (StringUtils.isEmpty(inpVoucherIdSearchStr) && StringUtils.isEmpty(inpAuditStatusSearchStr) && StringUtils.isEmpty(startDate)) {
            alert.setContentText("\u5fc5\u987b\u81f3\u5c11\u586b\u5199\u4e00\u9879\u5185\u5bb9\u8fdb\u884c\u67e5\u8be2\uff01");
            alert.showAndWait();
            return;
        }
        this.initTable(0);
        this.pagination.setCurrentPageIndex(0);
    }

    @FXML
    private void addTempHumi() {
        this.addTempHumiController.init();
        GysApplication.showView(addTempHumiView.class, (Modality)Modality.APPLICATION_MODAL);
    }

    @FXML
    private void auditTempHumi() {
        List<Integer> indexList = this.getSelectIndex();
        if (ObjectUtil.isEmpty(indexList)) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", "\u8bf7\u9009\u62e9\u8bb0\u5f55");
            alert.showAndWait();
            return;
        }
        ArrayList inData = new ArrayList();
        indexList.forEach(item -> {
            TempHumiOutData data = (TempHumiOutData)this.observableTableList.get(item - 1);
            TempHumiInData inDataParam = new TempHumiInData();
            inDataParam.setGsthVoucherId(data.getGsthVoucherId());
            inData.add(inDataParam);
        });
        HashMap<String, Object> param = new HashMap<String, Object>();
        param.put("tempHumiInData", inData);
        HttpJson httpJson = TempHumiUtil.auditTempHumi(param);
        if (!httpJson.isSuccess()) {
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", httpJson.getMsg());
            alert.showAndWait();
        } else {
            this.initTable(0);
            this.pagination.setCurrentPageIndex(0);
            Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", "\u5ba1\u6838\u6210\u529f!");
            alert.showAndWait();
        }
    }

    public List<Integer> getSelectIndex() {
        ArrayList<Integer> ids = new ArrayList<Integer>();
        if (!CollectionUtils.isEmpty(this.observableTableList)) {
            for (TempHumiOutData i : this.observableTableList) {
                if (!i.getHumiCheckBox().isSelected().booleanValue()) continue;
                ids.add(i.getIndex());
            }
        }
        return ids;
    }

    private List<GsdcStatus> getAllStatus() {
        ArrayList<GsdcStatus> list = new ArrayList<GsdcStatus>();
        list.add(new GsdcStatus("1", "\u5df2\u5ba1\u6838"));
        list.add(new GsdcStatus("0", "\u672a\u5ba1\u6838"));
        return list;
    }

    @FXML
    private void reset() {
        this.inpVoucherId.clear();
        this.inpAuditStatus.setValue(null);
        this.inpCheckDate.setValue(null);
    }

    public int getPageSize() {
        return this.pageSize;
    }

    public int getDefaultPageCount() {
        return this.defaultPageCount;
    }

    public ObservableList<TempHumiOutData> getObservableTableList() {
        return this.observableTableList;
    }

    public ScrollPane getScrollPane() {
        return this.scrollPane;
    }

    public VBox getVBox() {
        return this.vBox;
    }

    public Button getSureBtn() {
        return this.sureBtn;
    }

    public Button getAddBtn() {
        return this.addBtn;
    }

    public Pagination getPagination() {
        return this.pagination;
    }

    public TextField getInpVoucherId() {
        return this.inpVoucherId;
    }

    public ChoiceBox<GsdcStatus> getInpAuditStatus() {
        return this.inpAuditStatus;
    }

    public DatePicker getInpCheckDate() {
        return this.inpCheckDate;
    }

    public TableColumn<TempHumiOutData, String> getIndex() {
        return this.index;
    }

    public TableColumn<TempHumiOutData, String> getGsthVoucherId() {
        return this.gsthVoucherId;
    }

    public TableColumn<TempHumiOutData, String> getGsthBrId() {
        return this.gsthBrId;
    }

    public TableColumn<TempHumiOutData, String> getGsthBrName() {
        return this.gsthBrName;
    }

    public TableColumn<TempHumiOutData, String> getGsthArea() {
        return this.gsthArea;
    }

    public TableColumn<TempHumiOutData, String> getGsthDate() {
        return this.gsthDate;
    }

    public TableColumn<TempHumiOutData, String> getGsthTime() {
        return this.gsthTime;
    }

    public TableColumn<TempHumiOutData, String> getGsthTemp() {
        return this.gsthTemp;
    }

    public TableColumn<TempHumiOutData, String> getGsthHumi() {
        return this.gsthHumi;
    }

    public TableColumn<TempHumiOutData, String> getGsthCheckStep() {
        return this.gsthCheckStep;
    }

    public TableColumn<TempHumiOutData, String> getGsthCheckTemp() {
        return this.gsthCheckTemp;
    }

    public TableColumn<TempHumiOutData, String> getGsthCheckHumi() {
        return this.gsthCheckHumi;
    }

    public TableColumn<TempHumiOutData, String> getGsthUpdateEmp() {
        return this.gsthUpdateEmp;
    }

    public TableColumn<TempHumiOutData, String> getGsthStatus() {
        return this.gsthStatus;
    }

    public TableColumn<TempHumiOutData, CheckBox> getHumiCheckBox() {
        return this.humiCheckBox;
    }

    public TableView<TempHumiOutData> getTableView() {
        return this.tableView;
    }

    public IndexController getIndexController() {
        return this.indexController;
    }

    public AddTempHumiController getAddTempHumiController() {
        return this.addTempHumiController;
    }

    public Stage getStg() {
        return this.stg;
    }

    public void setObservableTableList(ObservableList<TempHumiOutData> observableTableList) {
        this.observableTableList = observableTableList;
    }

    public void setScrollPane(ScrollPane scrollPane) {
        this.scrollPane = scrollPane;
    }

    public void setVBox(VBox vBox) {
        this.vBox = vBox;
    }

    public void setSureBtn(Button sureBtn) {
        this.sureBtn = sureBtn;
    }

    public void setAddBtn(Button addBtn) {
        this.addBtn = addBtn;
    }

    public void setPagination(Pagination pagination) {
        this.pagination = pagination;
    }

    public void setInpVoucherId(TextField inpVoucherId) {
        this.inpVoucherId = inpVoucherId;
    }

    public void setInpAuditStatus(ChoiceBox<GsdcStatus> inpAuditStatus) {
        this.inpAuditStatus = inpAuditStatus;
    }

    public void setInpCheckDate(DatePicker inpCheckDate) {
        this.inpCheckDate = inpCheckDate;
    }

    public void setIndex(TableColumn<TempHumiOutData, String> index) {
        this.index = index;
    }

    public void setGsthVoucherId(TableColumn<TempHumiOutData, String> gsthVoucherId) {
        this.gsthVoucherId = gsthVoucherId;
    }

    public void setGsthBrId(TableColumn<TempHumiOutData, String> gsthBrId) {
        this.gsthBrId = gsthBrId;
    }

    public void setGsthBrName(TableColumn<TempHumiOutData, String> gsthBrName) {
        this.gsthBrName = gsthBrName;
    }

    public void setGsthArea(TableColumn<TempHumiOutData, String> gsthArea) {
        this.gsthArea = gsthArea;
    }

    public void setGsthDate(TableColumn<TempHumiOutData, String> gsthDate) {
        this.gsthDate = gsthDate;
    }

    public void setGsthTime(TableColumn<TempHumiOutData, String> gsthTime) {
        this.gsthTime = gsthTime;
    }

    public void setGsthTemp(TableColumn<TempHumiOutData, String> gsthTemp) {
        this.gsthTemp = gsthTemp;
    }

    public void setGsthHumi(TableColumn<TempHumiOutData, String> gsthHumi) {
        this.gsthHumi = gsthHumi;
    }

    public void setGsthCheckStep(TableColumn<TempHumiOutData, String> gsthCheckStep) {
        this.gsthCheckStep = gsthCheckStep;
    }

    public void setGsthCheckTemp(TableColumn<TempHumiOutData, String> gsthCheckTemp) {
        this.gsthCheckTemp = gsthCheckTemp;
    }

    public void setGsthCheckHumi(TableColumn<TempHumiOutData, String> gsthCheckHumi) {
        this.gsthCheckHumi = gsthCheckHumi;
    }

    public void setGsthUpdateEmp(TableColumn<TempHumiOutData, String> gsthUpdateEmp) {
        this.gsthUpdateEmp = gsthUpdateEmp;
    }

    public void setGsthStatus(TableColumn<TempHumiOutData, String> gsthStatus) {
        this.gsthStatus = gsthStatus;
    }

    public void setHumiCheckBox(TableColumn<TempHumiOutData, CheckBox> humiCheckBox) {
        this.humiCheckBox = humiCheckBox;
    }

    public void setTableView(TableView<TempHumiOutData> tableView) {
        this.tableView = tableView;
    }

    public void setIndexController(IndexController indexController) {
        this.indexController = indexController;
    }

    public void setAddTempHumiController(AddTempHumiController addTempHumiController) {
        this.addTempHumiController = addTempHumiController;
    }

    public void setStg(Stage stg) {
        this.stg = stg;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof TempHumiController)) {
            return false;
        }
        TempHumiController other = (TempHumiController)o;
        if (!other.canEqual(this)) {
            return false;
        }
        if (this.getPageSize() != other.getPageSize()) {
            return false;
        }
        if (this.getDefaultPageCount() != other.getDefaultPageCount()) {
            return false;
        }
        ObservableList<TempHumiOutData> this$observableTableList = this.getObservableTableList();
        ObservableList<TempHumiOutData> other$observableTableList = other.getObservableTableList();
        if (this$observableTableList == null ? other$observableTableList != null : !this$observableTableList.equals(other$observableTableList)) {
            return false;
        }
        ScrollPane this$scrollPane = this.getScrollPane();
        ScrollPane other$scrollPane = other.getScrollPane();
        if (this$scrollPane == null ? other$scrollPane != null : !this$scrollPane.equals(other$scrollPane)) {
            return false;
        }
        VBox this$vBox = this.getVBox();
        VBox other$vBox = other.getVBox();
        if (this$vBox == null ? other$vBox != null : !this$vBox.equals(other$vBox)) {
            return false;
        }
        Button this$sureBtn = this.getSureBtn();
        Button other$sureBtn = other.getSureBtn();
        if (this$sureBtn == null ? other$sureBtn != null : !this$sureBtn.equals(other$sureBtn)) {
            return false;
        }
        Button this$addBtn = this.getAddBtn();
        Button other$addBtn = other.getAddBtn();
        if (this$addBtn == null ? other$addBtn != null : !this$addBtn.equals(other$addBtn)) {
            return false;
        }
        Pagination this$pagination = this.getPagination();
        Pagination other$pagination = other.getPagination();
        if (this$pagination == null ? other$pagination != null : !this$pagination.equals(other$pagination)) {
            return false;
        }
        TextField this$inpVoucherId = this.getInpVoucherId();
        TextField other$inpVoucherId = other.getInpVoucherId();
        if (this$inpVoucherId == null ? other$inpVoucherId != null : !this$inpVoucherId.equals(other$inpVoucherId)) {
            return false;
        }
        ChoiceBox<GsdcStatus> this$inpAuditStatus = this.getInpAuditStatus();
        ChoiceBox<GsdcStatus> other$inpAuditStatus = other.getInpAuditStatus();
        if (this$inpAuditStatus == null ? other$inpAuditStatus != null : !this$inpAuditStatus.equals(other$inpAuditStatus)) {
            return false;
        }
        DatePicker this$inpCheckDate = this.getInpCheckDate();
        DatePicker other$inpCheckDate = other.getInpCheckDate();
        if (this$inpCheckDate == null ? other$inpCheckDate != null : !this$inpCheckDate.equals(other$inpCheckDate)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$index = this.getIndex();
        TableColumn<TempHumiOutData, String> other$index = other.getIndex();
        if (this$index == null ? other$index != null : !this$index.equals(other$index)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthVoucherId = this.getGsthVoucherId();
        TableColumn<TempHumiOutData, String> other$gsthVoucherId = other.getGsthVoucherId();
        if (this$gsthVoucherId == null ? other$gsthVoucherId != null : !this$gsthVoucherId.equals(other$gsthVoucherId)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthBrId = this.getGsthBrId();
        TableColumn<TempHumiOutData, String> other$gsthBrId = other.getGsthBrId();
        if (this$gsthBrId == null ? other$gsthBrId != null : !this$gsthBrId.equals(other$gsthBrId)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthBrName = this.getGsthBrName();
        TableColumn<TempHumiOutData, String> other$gsthBrName = other.getGsthBrName();
        if (this$gsthBrName == null ? other$gsthBrName != null : !this$gsthBrName.equals(other$gsthBrName)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthArea = this.getGsthArea();
        TableColumn<TempHumiOutData, String> other$gsthArea = other.getGsthArea();
        if (this$gsthArea == null ? other$gsthArea != null : !this$gsthArea.equals(other$gsthArea)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthDate = this.getGsthDate();
        TableColumn<TempHumiOutData, String> other$gsthDate = other.getGsthDate();
        if (this$gsthDate == null ? other$gsthDate != null : !this$gsthDate.equals(other$gsthDate)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthTime = this.getGsthTime();
        TableColumn<TempHumiOutData, String> other$gsthTime = other.getGsthTime();
        if (this$gsthTime == null ? other$gsthTime != null : !this$gsthTime.equals(other$gsthTime)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthTemp = this.getGsthTemp();
        TableColumn<TempHumiOutData, String> other$gsthTemp = other.getGsthTemp();
        if (this$gsthTemp == null ? other$gsthTemp != null : !this$gsthTemp.equals(other$gsthTemp)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthHumi = this.getGsthHumi();
        TableColumn<TempHumiOutData, String> other$gsthHumi = other.getGsthHumi();
        if (this$gsthHumi == null ? other$gsthHumi != null : !this$gsthHumi.equals(other$gsthHumi)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthCheckStep = this.getGsthCheckStep();
        TableColumn<TempHumiOutData, String> other$gsthCheckStep = other.getGsthCheckStep();
        if (this$gsthCheckStep == null ? other$gsthCheckStep != null : !this$gsthCheckStep.equals(other$gsthCheckStep)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthCheckTemp = this.getGsthCheckTemp();
        TableColumn<TempHumiOutData, String> other$gsthCheckTemp = other.getGsthCheckTemp();
        if (this$gsthCheckTemp == null ? other$gsthCheckTemp != null : !this$gsthCheckTemp.equals(other$gsthCheckTemp)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthCheckHumi = this.getGsthCheckHumi();
        TableColumn<TempHumiOutData, String> other$gsthCheckHumi = other.getGsthCheckHumi();
        if (this$gsthCheckHumi == null ? other$gsthCheckHumi != null : !this$gsthCheckHumi.equals(other$gsthCheckHumi)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthUpdateEmp = this.getGsthUpdateEmp();
        TableColumn<TempHumiOutData, String> other$gsthUpdateEmp = other.getGsthUpdateEmp();
        if (this$gsthUpdateEmp == null ? other$gsthUpdateEmp != null : !this$gsthUpdateEmp.equals(other$gsthUpdateEmp)) {
            return false;
        }
        TableColumn<TempHumiOutData, String> this$gsthStatus = this.getGsthStatus();
        TableColumn<TempHumiOutData, String> other$gsthStatus = other.getGsthStatus();
        if (this$gsthStatus == null ? other$gsthStatus != null : !this$gsthStatus.equals(other$gsthStatus)) {
            return false;
        }
        TableColumn<TempHumiOutData, CheckBox> this$humiCheckBox = this.getHumiCheckBox();
        TableColumn<TempHumiOutData, CheckBox> other$humiCheckBox = other.getHumiCheckBox();
        if (this$humiCheckBox == null ? other$humiCheckBox != null : !this$humiCheckBox.equals(other$humiCheckBox)) {
            return false;
        }
        TableView<TempHumiOutData> this$tableView = this.getTableView();
        TableView<TempHumiOutData> other$tableView = other.getTableView();
        if (this$tableView == null ? other$tableView != null : !this$tableView.equals(other$tableView)) {
            return false;
        }
        IndexController this$indexController = this.getIndexController();
        IndexController other$indexController = other.getIndexController();
        if (this$indexController == null ? other$indexController != null : !(this$indexController).equals(other$indexController)) {
            return false;
        }
        AddTempHumiController this$addTempHumiController = this.getAddTempHumiController();
        AddTempHumiController other$addTempHumiController = other.getAddTempHumiController();
        if (this$addTempHumiController == null ? other$addTempHumiController != null : !(this$addTempHumiController).equals(other$addTempHumiController)) {
            return false;
        }
        Stage this$stg = this.getStg();
        Stage other$stg = other.getStg();
        return !(this$stg == null ? other$stg != null : !this$stg.equals(other$stg));
    }

    protected boolean canEqual(Object other) {
        return other instanceof TempHumiController;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        result = result * 59 + this.getPageSize();
        result = result * 59 + this.getDefaultPageCount();
        ObservableList<TempHumiOutData> $observableTableList = this.getObservableTableList();
        result = result * 59 + ($observableTableList == null ? 43 : $observableTableList.hashCode());
        ScrollPane $scrollPane = this.getScrollPane();
        result = result * 59 + ($scrollPane == null ? 43 : $scrollPane.hashCode());
        VBox $vBox = this.getVBox();
        result = result * 59 + ($vBox == null ? 43 : $vBox.hashCode());
        Button $sureBtn = this.getSureBtn();
        result = result * 59 + ($sureBtn == null ? 43 : $sureBtn.hashCode());
        Button $addBtn = this.getAddBtn();
        result = result * 59 + ($addBtn == null ? 43 : $addBtn.hashCode());
        Pagination $pagination = this.getPagination();
        result = result * 59 + ($pagination == null ? 43 : $pagination.hashCode());
        TextField $inpVoucherId = this.getInpVoucherId();
        result = result * 59 + ($inpVoucherId == null ? 43 : $inpVoucherId.hashCode());
        ChoiceBox<GsdcStatus> $inpAuditStatus = this.getInpAuditStatus();
        result = result * 59 + ($inpAuditStatus == null ? 43 : $inpAuditStatus.hashCode());
        DatePicker $inpCheckDate = this.getInpCheckDate();
        result = result * 59 + ($inpCheckDate == null ? 43 : $inpCheckDate.hashCode());
        TableColumn<TempHumiOutData, String> $index = this.getIndex();
        result = result * 59 + ($index == null ? 43 : $index.hashCode());
        TableColumn<TempHumiOutData, String> $gsthVoucherId = this.getGsthVoucherId();
        result = result * 59 + ($gsthVoucherId == null ? 43 : $gsthVoucherId.hashCode());
        TableColumn<TempHumiOutData, String> $gsthBrId = this.getGsthBrId();
        result = result * 59 + ($gsthBrId == null ? 43 : $gsthBrId.hashCode());
        TableColumn<TempHumiOutData, String> $gsthBrName = this.getGsthBrName();
        result = result * 59 + ($gsthBrName == null ? 43 : $gsthBrName.hashCode());
        TableColumn<TempHumiOutData, String> $gsthArea = this.getGsthArea();
        result = result * 59 + ($gsthArea == null ? 43 : $gsthArea.hashCode());
        TableColumn<TempHumiOutData, String> $gsthDate = this.getGsthDate();
        result = result * 59 + ($gsthDate == null ? 43 : $gsthDate.hashCode());
        TableColumn<TempHumiOutData, String> $gsthTime = this.getGsthTime();
        result = result * 59 + ($gsthTime == null ? 43 : $gsthTime.hashCode());
        TableColumn<TempHumiOutData, String> $gsthTemp = this.getGsthTemp();
        result = result * 59 + ($gsthTemp == null ? 43 : $gsthTemp.hashCode());
        TableColumn<TempHumiOutData, String> $gsthHumi = this.getGsthHumi();
        result = result * 59 + ($gsthHumi == null ? 43 : $gsthHumi.hashCode());
        TableColumn<TempHumiOutData, String> $gsthCheckStep = this.getGsthCheckStep();
        result = result * 59 + ($gsthCheckStep == null ? 43 : $gsthCheckStep.hashCode());
        TableColumn<TempHumiOutData, String> $gsthCheckTemp = this.getGsthCheckTemp();
        result = result * 59 + ($gsthCheckTemp == null ? 43 : $gsthCheckTemp.hashCode());
        TableColumn<TempHumiOutData, String> $gsthCheckHumi = this.getGsthCheckHumi();
        result = result * 59 + ($gsthCheckHumi == null ? 43 : $gsthCheckHumi.hashCode());
        TableColumn<TempHumiOutData, String> $gsthUpdateEmp = this.getGsthUpdateEmp();
        result = result * 59 + ($gsthUpdateEmp == null ? 43 : $gsthUpdateEmp.hashCode());
        TableColumn<TempHumiOutData, String> $gsthStatus = this.getGsthStatus();
        result = result * 59 + ($gsthStatus == null ? 43 : $gsthStatus.hashCode());
        TableColumn<TempHumiOutData, CheckBox> $humiCheckBox = this.getHumiCheckBox();
        result = result * 59 + ($humiCheckBox == null ? 43 : $humiCheckBox.hashCode());
        TableView<TempHumiOutData> $tableView = this.getTableView();
        result = result * 59 + ($tableView == null ? 43 : $tableView.hashCode());
        IndexController $indexController = this.getIndexController();
        result = result * 59 + ($indexController == null ? 43 : ($indexController).hashCode());
        AddTempHumiController $addTempHumiController = this.getAddTempHumiController();
        result = result * 59 + ($addTempHumiController == null ? 43 : ($addTempHumiController).hashCode());
        Stage $stg = this.getStg();
        result = result * 59 + ($stg == null ? 43 : $stg.hashCode());
        return result;
    }

    public String toString() {
        return "TempHumiController(pageSize=" + this.getPageSize() + ", defaultPageCount=" + this.getDefaultPageCount() + ", observableTableList=" + this.getObservableTableList() + ", scrollPane=" + this.getScrollPane() + ", vBox=" + this.getVBox() + ", sureBtn=" + this.getSureBtn() + ", addBtn=" + this.getAddBtn() + ", pagination=" + this.getPagination() + ", inpVoucherId=" + this.getInpVoucherId() + ", inpAuditStatus=" + this.getInpAuditStatus() + ", inpCheckDate=" + this.getInpCheckDate() + ", index=" + this.getIndex() + ", gsthVoucherId=" + this.getGsthVoucherId() + ", gsthBrId=" + this.getGsthBrId() + ", gsthBrName=" + this.getGsthBrName() + ", gsthArea=" + this.getGsthArea() + ", gsthDate=" + this.getGsthDate() + ", gsthTime=" + this.getGsthTime() + ", gsthTemp=" + this.getGsthTemp() + ", gsthHumi=" + this.getGsthHumi() + ", gsthCheckStep=" + this.getGsthCheckStep() + ", gsthCheckTemp=" + this.getGsthCheckTemp() + ", gsthCheckHumi=" + this.getGsthCheckHumi() + ", gsthUpdateEmp=" + this.getGsthUpdateEmp() + ", gsthStatus=" + this.getGsthStatus() + ", humiCheckBox=" + this.getHumiCheckBox() + ", tableView=" + this.getTableView() + ", indexController=" + this.getIndexController() + ", addTempHumiController=" + this.getAddTempHumiController() + ", stg=" + this.getStg() + ")";
    }
}

